home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 51 / Amiga Format CD51 (2000-03-10)(Future Publishing)(GB)[!][issue 2000-04].iso / -in_the_mag- / pdselect / awnp / awnp-docs / demos / form < prev    next >
Text File  |  2000-02-16  |  2KB  |  102 lines

  1. ; Form GUI with AWNPipe:  by WHMP
  2. ;This sort of thing is best handled by arexx but this demo is to show how
  3. ;much can realy be acomplished by an ADOS script using AWNPipe:
  4.  
  5. ;set up an edit sequence to remove the first line of a file.
  6. echo >t:editdata "d 1 w"
  7. resident c:edit add pure
  8.  
  9. lab start
  10. ;set defaults
  11. set 0 "Please Complete this form"
  12. set 1 ""
  13. set 2 45
  14. set 3 5
  15. set 4 0
  16.  
  17. lab restart
  18. ; clear close flag
  19. set close ""
  20. ; build the form
  21.  
  22. echo >t:form.pca "*"CAPipe: Form Demo*" defg  v q "
  23. echo >>t:form.pca "label gt *"$0*" rj"
  24. echo >>t:form.pca "label ua gt _Name*nString tc gt *"$1*" chl"
  25. echo >>t:form.pca "label ua gt _Age *ninteger tc minn 5 maxn 111 arrows defn $2 chl"
  26. echo >>t:form.pca "label ua gt _Computer*nchooser tc pu cl 500|1000|1200|2000|2500|3000|CDTV|4000|other s $3 chl"
  27. echo >>t:form.pca "label ua gt *"This GUIPipe is*"*nradiobutton tc weih 1 rl *"Cool !|Good|Poor|Realy lame*" s $4 chl"
  28. echo >>t:form.pca "layout*nButton gt OK c*nbutton gt Cancel c*nbutton gt Reset c*nle*n*n open"
  29.  
  30. ;display the form and save events in enviroment variable
  31. type >env:formevent awnpipe:1/xcrt:form.pca
  32.  
  33. lab loop
  34. ;read  events as env variable into env variable, and again....TRICKS!
  35.  
  36. ;echo $formevent
  37. set $formevent
  38. set $gadget
  39.  
  40. ;exit if we are done
  41. if not "$close" eq ""
  42. skip done
  43. endif
  44.  
  45. ;no close yet so delete a line of results and loop to check another event
  46. edit env:formevent with t:editdata
  47. skip back loop
  48.  
  49. lab done
  50.  
  51. if  "$close" eq "6"
  52. ;  we closed with the ok gadget
  53.  
  54. ;Reopen if name has not been entered
  55. if "$1" eq ""
  56. set 0 "Name is a required field"
  57. skip back restart
  58. endif
  59.  
  60. ;show results
  61. echo "NAME    :$1"
  62. echo "AGE     :$2"
  63. echo "COMPUTER:$3"
  64. echo "RATING  :$4"
  65.  
  66. endif
  67. ;else
  68. ;user closed the window, selected cancel, or selected reset
  69.  
  70. if  "$close" eq "8"
  71. ;reset was selected
  72. skip back start
  73. endif
  74.  
  75. ;echo "User Aborted"
  76. ;endif
  77.  
  78. ;we are done so cleanup
  79. unset 1
  80. unset 2
  81. unset 3
  82. unset 4
  83. unset 6
  84. unset 7
  85. unset 8
  86. unset 0
  87. unset gadget
  88. resident edit remove
  89. delete t:form.pca >nil:
  90. delete env:formevent >nil:
  91. delete t:editdata >nil:
  92.  
  93. if  "$close" eq "6"
  94. ; all ok
  95. unset close
  96. quit
  97. endif
  98.  
  99. ;fail
  100. unset close
  101. quit 20
  102.